package com.xyht.sca_s.student_manage_system.modules.useMoneyApplication.entity.dto;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sms_use_money_application")
@ApiModel(value="SmsUseMoneyApplication对象", description="用款申请")
public class SmsUseMoneyApplicationMpjDTO implements Serializable {
    private String id;

    private String applicationId;

    @ApiModelProperty(value = "用款事由")
    private String smsUseMoneyReason;

    @ApiModelProperty(value = "用款方式")
    private String smsUseMoneyWay;

    @ApiModelProperty(value = "开票情况")
    private String smsUseMoneyOpenTicket;

    @ApiModelProperty(value = "用款金额（大写）")
    private String smsUseMoneyAmountBig;

    @ApiModelProperty(value = "用款金额（小写）")
    private String smsUseMoneyAmountSmall;

    @ApiModelProperty(value = "用款部门")
    private String smsUseMoneyDepartment;

    @ApiModelProperty(value = "合同号及结算金额")
    private String smsUseMoneyContractNumber;

    @ApiModelProperty(value = "申请人")
    private String smsUseMoneyApplicationPerson;

    @ApiModelProperty(value = "已付情况说明")
    private String smsUseMoneyDescriptionPay;

    @ApiModelProperty(value = "收款单位全称")
    private String smsUseMoneyGetMoneyUnitName;

    @ApiModelProperty(value = "账号")
    private String smsUseMoneyBankNumber;

    @ApiModelProperty(value = "开户银行")
    private String smsUseMoneyBankOfOpen;

    @ApiModelProperty(value = "审批状态：0未通过，1通过，2待审核 3撤销")
    private Integer smsApplicationState;

    @ApiModelProperty(value = "流程结束时间")
    private Date smsProcessEndTime;

    @ApiModelProperty(value = "用户id")
    private String userId;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "结算金额")
    private String smsUseMoneySettlementAmount;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    private SmsUseMoneyUserDTO applyUserInfo;

    @ApiModelProperty(value = "申请人id")
    private String useMoneyApplyUserId;

    private String processName;

    private String detailId;

    @ApiModelProperty(value = "审批人id")
    private String allowUserId;

    @ApiModelProperty(value = "审批状态  0：审批中  1：通过   2：驳回   3：撤销")
    private Integer detailAllowStatus;

    List<SmsUseMoneyApplicationDetailDTO> detailList;

    private Integer checkType;
}
